A SONET optical data signal (i.e., such as STS-48, meaning 48 synchronous transport streams) is typically composed of multiple STS-1's which are assigned to various resources or clients, with the greater the number of STS-1's representing increased bandwidth. An advantageous feature of SONET framing, which makes it particularly desirable for metro and wide area optical transport networks, is that it provides a deterministic and flexible bandwidth allocation.
Each STS-1 of a SONET frame has a frame format consisting of rows and columns of fixed numbers of octet sequences (an octet having 8 bits and being alternatively referred to as a byte) and the first few columns of octets contain transport overhead information while the remaining octets form a payload which transports user information. The payload format for a SONET frame is static and, accordingly, the known methods used for the mapping of data into a SONET frame are also static in that each octet position in the SONET frame payload is assigned a predetermined meaning between the sender and receiver of the mapped data. Because of the nature of the SONET payload format the user information which is normally mapped into a SONET frame is limited to structures having formats in which control and data type information have either fixed positions in the input and output information sequences or can be differentiated on the basis of algorithms previously applied to them such as HDLC byte stuffing.
However, many information sequence structures do not have a fixed structure and instead may contain an arbitrary or varying mixture of control and data type values. For example, this is true of packetized data such as Ethernet frames, IP datagrams, physical layer encoding schemes such as 8b10b as well as other information structures with two information types (i.e., control and data). For these information structures it can be difficult to distinguish between octets containing control information and octets containing data information and this makes it necessary to add checks to the octet sequences to ensure that these information types can be distinguished. For example, for packetized data such as Ethernet transport data, the above-mentioned mapping scheme based on HDLC byte stuffing is often used for delineating frames (i.e., marking frame boundaries so as to distinguish between two frames). This byte stuffing technique defines two control octet values, one used as a frame delimiter code, and the other to mark data codes with the same value as either control code to prevent misinterpretation. When a data code value matches either control code value, the mark data control code is inserted in front of the data code, and the data code value is adjusted.
Such methods are problematic, however, because the number of octets required, and therefore bandwidth required, to transport a data/code sequence is then determined by the data content and as many as twice the number of data structure octets may be required to carry the data structure (since, in theory, it could become necessary to mark each data code). Extending this technique to carry many different control code values, as required for transport of line codes like 8b10b would worsen this problem. The resulting loss of a deterministic bandwidth capability thereby requires additional bandwidth to be provisioned across a SONET network to provide a guaranteed quality of service.
There is a need, therefore, for means to enable a flexible mapping of data into a SONET frame by which control and data information value types need not be assigned to any fixed position in the frame and also need not be distinguished by adding extra check codes.